class SyjModel {
  Data? data;
  num? useTime;
  String? version;
  String? returncode;
  SyjModel({ this.data, this.useTime, this.version , this.returncode});

  SyjModel.fromJson(Map<String, dynamic> json) {
    data = json['data'] != null ?  Data.fromJson(json['data']) : null;
    useTime = json['useTime'];
    version = json['version'];
    returncode = json['returncode'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    if(null!=this.data){
      data['data'] = this.data!.toJson();
    }
    data['useTime'] = useTime;
    data['version'] = version;
    data['returncode'] = returncode;
    return data;
  }
}

class Data {
  String? commandId;
  List<Ddlx>? ddlx;
  List<Elecscalecoderule>? elecscalecoderule;
  List<Null>? errorMsg;
  Ftpaddr? ftpaddr;
  Mktinfo? mktinfo;
  String? netType;
  List<Payinmode>? payinmode;
  List<Paymentmethodposref>? paymentmethodposref;
  List<Paymode>? paymode;
  Posadvertisetemplate? posadvertisetemplate;
  List<Poscallinfo>? poscallinfo;
  List<Poskeyboard>? poskeyboard;
  String? posmode;
  List<Postime>? postime;
  Printtemplate? printtemplate;
  Selfgoodstemplate? selfgoodstemplate;
  ServerTime? serverTime;
 // List<Smposkeyboard> smposkeyboard;
  Smtouchpostemplate? smtouchpostemplate;
  String? syjgrouprange;
  List<String>? syjlogo;
  Syjmain? syjmain;
  List<Syjprecashtemplate>? syjprecashtemplate;
  List<Syspara>? syspara;
  List<Threason>? threason;
  String? timeZone;
  Smtouchpostemplate? touchpostemplate;
  String? traceId;
  String? uniformity;

  Data(
      {this.commandId,
        this.ddlx,
        this.elecscalecoderule,
        this.errorMsg,
        this.ftpaddr,
        this.mktinfo,
        this.netType,
        this.payinmode,
        this.paymentmethodposref,
        this.paymode,
        this.posadvertisetemplate,
        this.poscallinfo,
        this.poskeyboard,
        this.posmode,
        this.postime,
        this.printtemplate,
        this.selfgoodstemplate,
        this.serverTime,
        //this.smposkeyboard,
        this.smtouchpostemplate,
        this.syjgrouprange,
        this.syjlogo,
        this.syjmain,
        this.syjprecashtemplate,
        this.syspara,
        this.threason,
        this.timeZone,
        this.touchpostemplate,
        this.traceId,
        this.uniformity,
        });

  Data.fromJson(Map<String, dynamic> json) {
    commandId = json['command_id'];
    if (json['ddlx'] != null) {
      ddlx = [];
      json['ddlx'].forEach((v) {
        ddlx!.add( Ddlx.fromJson(v));
      });
    }
    if (json['elecscalecoderule'] != null) {
      elecscalecoderule =  <Elecscalecoderule>[];
      json['elecscalecoderule'].forEach((v) {
        elecscalecoderule!.add(Elecscalecoderule.fromJson(v));
      });
    }
    ftpaddr =
    json['ftpaddr'] != null ?  Ftpaddr.fromJson(json['ftpaddr']) : null;
    mktinfo =
    json['mktinfo'] != null ?  Mktinfo.fromJson(json['mktinfo']) : null;
    netType = json['netType'];
    if (json['payinmode'] != null) {
      payinmode =  <Payinmode>[];
      json['payinmode'].forEach((v) {
        payinmode!.add( Payinmode.fromJson(v));
      });
    }
    if (json['paymode'] != null) {
      paymode =  <Paymode>[];
      json['paymode'].forEach((v) {
        paymode!.add(Paymode.fromJson(v));
      });
    }
    posadvertisetemplate = json['posadvertisetemplate'] != null
        ? Posadvertisetemplate.fromJson(json['posadvertisetemplate'])
        : null;
    if (json['poscallinfo'] != null) {
      poscallinfo =  <Poscallinfo>[];
      json['poscallinfo'].forEach((v) {
        poscallinfo!.add( Poscallinfo.fromJson(v));
      });
    }
    if (json['poskeyboard'] != null) {
      poskeyboard =  <Poskeyboard>[];
      json['poskeyboard'].forEach((v) {
        poskeyboard!.add(Poskeyboard.fromJson(v));
      });
    }
    posmode = json['posmode'];
    if (json['postime'] != null) {
      postime =  <Postime>[];
      json['postime'].forEach((v) {
        postime!.add(Postime.fromJson(v));
      });
    }
    printtemplate = json['printtemplate'] != null
        ? Printtemplate.fromJson(json['printtemplate'])
        : null;
    selfgoodstemplate = json['selfgoodstemplate'] != null
        ?  Selfgoodstemplate.fromJson(json['selfgoodstemplate'])
        : null;
    serverTime = json['serverTime'] != null
        ?  ServerTime.fromJson(json['serverTime'])
        : null;

    smtouchpostemplate = json['smtouchpostemplate'] != null
        ?  Smtouchpostemplate.fromJson(json['smtouchpostemplate'])
        : null;
    syjgrouprange = json['syjgrouprange'];
    if(null!=json['syjlogo']){
      syjlogo = json['syjlogo'].cast<String>();

    }
    syjmain =
    json['syjmain'] != null ?  Syjmain.fromJson(json['syjmain']) : null;

    if (json['syjprecashtemplate'] != null) {
      syjprecashtemplate =  <Syjprecashtemplate>[];
      json['syjprecashtemplate'].forEach((v) {
        syjprecashtemplate!.add( Syjprecashtemplate.fromJson(v));
      });
    }
    if (json['syspara'] != null) {
      syspara =  <Syspara>[];
      json['syspara'].forEach((v) {
        syspara!.add( Syspara.fromJson(v));
      });
    }
    if (json['threason'] != null) {
      threason =  <Threason>[];
      json['threason'].forEach((v) {
        threason!.add( Threason.fromJson(v));
      });
    }
    if (json['paymentmethodposref'] != null) {
      paymentmethodposref =  <Paymentmethodposref>[];
      json['paymentmethodposref'].forEach((v) {
        paymentmethodposref!.add( Paymentmethodposref.fromJson(v));
      });
    }
    timeZone = json['timeZone'];
    touchpostemplate = json['touchpostemplate'] != null && json['touchpostemplate'].length != 0
        ?  Smtouchpostemplate.fromJson(json['touchpostemplate'])
        : null;
    traceId = json['traceId'];
    uniformity = json['uniformity'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['command_id'] = commandId;
    if (ddlx != null) {
      data['ddlx'] = ddlx!.map((v) => v.toJson()).toList();
    }
    if (elecscalecoderule != null) {
      data['elecscalecoderule'] =
          elecscalecoderule!.map((v) => v.toJson()).toList();
    }

    if (ftpaddr != null) {
      data['ftpaddr'] = ftpaddr!.toJson();
    }
    if (mktinfo != null) {
      data['mktinfo'] = mktinfo!.toJson();
    }
    data['netType'] = netType;
    if (payinmode != null) {
      data['payinmode'] = payinmode!.map((v) => v.toJson()).toList();
    }

    if (paymode != null) {
      data['paymode'] = this.paymode!.map((v) => v.toJson()).toList();
    }
    if (posadvertisetemplate != null) {
      data['posadvertisetemplate'] = this.posadvertisetemplate!.toJson();
    }
    if (poscallinfo != null) {
      data['poscallinfo'] = poscallinfo!.map((v) => v.toJson()).toList();
    }
    if (poskeyboard != null) {
      data['poskeyboard'] = poskeyboard!.map((v) => v.toJson()).toList();
    }
    data['posmode'] = posmode;
    if (postime != null) {
      data['postime'] = postime!.map((v) => v.toJson()).toList();
    }
    if (printtemplate != null) {
      data['printtemplate'] = printtemplate!.toJson();
    }
    if (selfgoodstemplate != null) {
      data['selfgoodstemplate'] = selfgoodstemplate!.toJson();
    }
    if (serverTime != null) {
      data['serverTime'] = serverTime!.toJson();
    }
    if (smtouchpostemplate != null) {
      data['smtouchpostemplate'] = smtouchpostemplate!.toJson();
    }
    data['syjgrouprange'] = syjgrouprange;
    data['syjlogo'] = syjlogo;
    if (syjmain != null) {
      data['syjmain'] = syjmain;
    }
    if (syjprecashtemplate != null) {
      data['syjprecashtemplate'] =
          syjprecashtemplate!.map((v) => v.toJson()).toList();
    }
    if (syspara != null) {
      data['syspara'] = syspara!.map((v) => v.toJson()).toList();
    }
    if (threason != null) {
      data['threason'] = threason!.map((v) => v.toJson()).toList();
    }
    data['timeZone'] = timeZone;
    if (touchpostemplate != null) {
      data['touchpostemplate'] = touchpostemplate!.toJson();
    }
    if (paymentmethodposref != null) {
      data['paymentmethodposref'] =
      paymentmethodposref!.map((v) => v.toJson()).toList();
    }

    data['traceId'] = traceId;
    data['uniformity'] = uniformity;
    return data;
  }
}

class Ddlx {
  String? cnName;
  String? code;
  String? creator;
  String? dictCode;
  num? did;
  int? entId;
  String? erpCode;
  num? id;
  bool? isParent;
  String? lang;
  int? orderSeq;
  num? status;
  num? systemFlag;
  String? updateDate;
  String? value;
  String? enName;

  Ddlx(
      {this.cnName,
        this.code,
        this.creator,
        this.dictCode,
        this.did,
        this.entId,
        this.erpCode,
        this.id,
        this.isParent,
        this.lang,
        this.orderSeq,
        this.status,
        this.systemFlag,
        this.updateDate,
        this.value,
        this.enName});

  Ddlx.fromJson(Map<String, dynamic> json) {
    cnName = json['cnName'];
    code = json['code'];
    creator = json['creator'];
    dictCode = json['dictCode'];
    did = json['did'];
    entId = json['entId'];
    erpCode = json['erpCode'];
    id = json['id'];
    isParent = json['isParent'];
    lang = json['lang'];
    orderSeq = json['orderSeq'];
    status = json['status'];
    systemFlag = json['systemFlag'];
    updateDate = json['updateDate'];
    value = json['value'];
    enName = json['enName'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['cnName'] = cnName;
    data['code'] = code;
    data['creator'] = creator;
    data['dictCode'] = dictCode;
    data['did'] = did;
    data['entId'] = entId;
    data['erpCode'] = erpCode;
    data['id'] = id;
    data['isParent'] = isParent;
    data['lang'] = lang;
    data['orderSeq'] = orderSeq;
    data['status'] = status;
    data['systemFlag'] = systemFlag;
    data['updateDate'] = updateDate;
    data['value'] = value;
    data['enName'] = enName;
    return data;
  }
}

class Elecscalecoderule {
  num? amountLen;
  num? amountPos;
  num? amtDecimalPlace;
  num? barCodeLen;
  num? codeLen;
  num? codePos;
  num? createDate;
  String? creator;
  num? entId;
  String? erpCode;
  num? identifier;
  num? identifierLen;
  num? identifierPos;
  String? lang;
  String? modifier;
  num? numDecimalPlace;
  num? numberLen;
  num? numberPos;
  num? ruleId;
  num? updateDate;
  num? validDateLen;
  num? validDatePos;
  String? validIdentifier;

  Elecscalecoderule(
      {this.amountLen,
        this.amountPos,
        this.amtDecimalPlace,
        this.barCodeLen,
        this.codeLen,
        this.codePos,
        this.createDate,
        this.creator,
        this.entId,
        this.erpCode,
        this.identifier,
        this.identifierLen,
        this.identifierPos,
        this.lang,
        this.modifier,
        this.numDecimalPlace,
        this.numberLen,
        this.numberPos,
        this.ruleId,
        this.updateDate,
        this.validDateLen,
        this.validDatePos,
        this.validIdentifier});

  Elecscalecoderule.fromJson(Map<String, dynamic> json) {
    amountLen = json['amountLen'];
    amountPos = json['amountPos'];
    amtDecimalPlace = json['amtDecimalPlace'];
    barCodeLen = json['barCodeLen'];
    codeLen = json['codeLen'];
    codePos = json['codePos'];
    createDate = json['createDate'];
    creator = json['creator'];
    entId = json['entId'];
    erpCode = json['erpCode'];
    identifier = json['identifier'];
    identifierLen = json['identifierLen'];
    identifierPos = json['identifierPos'];
    lang = json['lang'];
    modifier = json['modifier'];
    numDecimalPlace = json['numDecimalPlace'];
    numberLen = json['numberLen'];
    numberPos = json['numberPos'];
    ruleId = json['ruleId'];
    updateDate = json['updateDate'];
    validDateLen = json['validDateLen'];
    validDatePos = json['validDatePos'];
    validIdentifier = json['validIdentifier'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['amountLen'] = amountLen;
    data['amountPos'] = amountPos;
    data['amtDecimalPlace'] = amtDecimalPlace;
    data['barCodeLen'] = barCodeLen;
    data['codeLen'] = codeLen;
    data['codePos'] = codePos;
    data['createDate'] = createDate;
    data['creator'] = creator;
    data['entId'] = entId;
    data['erpCode'] = erpCode;
    data['identifier'] = identifier;
    data['identifierLen'] = identifierLen;
    data['identifierPos'] = identifierPos;
    data['lang'] = lang;
    data['modifier'] = modifier;
    data['numDecimalPlace'] = numDecimalPlace;
    data['numberLen'] = numberLen;
    data['numberPos'] = numberPos;
    data['ruleId'] = ruleId;
    data['updateDate'] = updateDate;
    data['validDateLen'] = validDateLen;
    data['validDatePos'] = validDatePos;
    data['validIdentifier'] = validIdentifier;
    return data;
  }
}

class Ftpaddr {
  int? entId;
  String? ftpaddress;
  String? passwd;
  int? port;
  String? userid;

  Ftpaddr({this.entId, this.ftpaddress, this.passwd, this.port, this.userid});

  Ftpaddr.fromJson(Map<String, dynamic> json) {
    entId = json['entId'];
    ftpaddress = json['ftpaddress'];
    passwd = json['passwd'];
    port = json['port'];
    userid = json['userid'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['entId'] = entId;
    data['ftpaddress'] = ftpaddress;
    data['passwd'] = passwd;
    data['port'] = port;
    data['userid'] = userid;
    return data;
  }
}

class Mktinfo {
  String? address;
  String? enAddress;
  String? groupCode;
  String? mktname;
  String? shopName;
  String? shopEnName;
  String? shopForm;
  String? shopSName;
  String?telephone;

  Mktinfo(
      {this.address,
        this.enAddress,
        this.groupCode,
        this.mktname,
        this.shopName,
        this.shopEnName,
        this.shopForm,
        this.shopSName,
        this.telephone});

  Mktinfo.fromJson(Map<String, dynamic> json) {
    address = json['address'];
    enAddress = json['enAddress'];
    groupCode = json['groupCode'];
    mktname = json['mktname'];
    shopName = json['shopName'];
    shopEnName = json['shopEnName'];
    shopForm = json['shopForm'];
    shopSName = json['shopSName'];
    telephone = json['telephone'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  Map<String, dynamic>();
    data['address'] = address;
    data['enAddress'] = enAddress;
    data['groupCode'] = groupCode;
    data['mktname'] = mktname;
    data['shopName'] = shopName;
    data['shopEnName'] = shopEnName;
    data['shopForm'] = shopForm;
    data['shopSName'] = shopSName;
    data['telephone'] = telephone;
    return data;
  }
}

class Payinmode {
  num? base;
  num? count;
  num? entId;
  String? name;
  String? paycode;
  String? code;
  PaymentMethod? paymentMethod;

  Payinmode(
      {this.base,
        this.count,
        this.entId,
        this.name,
        this.paycode,
        this.code,
        this.paymentMethod});

  Payinmode.fromJson(Map<String, dynamic> json) {
    base = json['base'];
    count = json['count'];
    entId = json['entId'];
    name = json['name'];
    paycode = json['paycode'];
    code = json['code'];
    paymentMethod = json['paymentMethod'] != null
        ?  PaymentMethod.fromJson(json['paymentMethod'])
        : null;
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  Map<String, dynamic>();
    data['base'] = base;
    data['count'] = count;
    data['entId'] = entId;
    data['name'] = name;
    data['paycode'] = paycode;
    data['code'] = code;
    if (paymentMethod != null) {
      data['paymentMethod'] = paymentMethod!.toJson();
    }
    return data;
  }
}

class PaymentMethod {
  num? base;
  String? cardPayType;
  String? changeFlag;
  num? changeRate;
  String? currencyCode;
  String? currencyFlag;
  num? entId;
  String? invoiceFlag;
  String? lang;
  String? leafFlag;
  num? level;
  num? maxAmount;
  num? minAmount;
  String? name;
  String? overflowFlag;
  String? parentCode;
  num? parentId;
  String? payCode;
  int? payLevel;
  String? payName;
  String? payPattern;
  String? paySCode;
  String? payType;
  num? pmid;
  num? rate;
  String? recordFlag;
  String? returnPayFlag;
  num? roundPrecision;
  String? roundType;
  num? status;
  num? virtualPayType;
  num? autoPayment;
  PaymentMethod(
      {this.base,
        this.cardPayType,
        this.changeFlag,
        this.changeRate,
        this.currencyCode,
        this.currencyFlag,
        this.entId,
        this.invoiceFlag,
        this.lang,
        this.leafFlag,
        this.level,
        this.maxAmount,
        this.minAmount,
        this.name,
        this.overflowFlag,
        this.parentCode,
        this.parentId,
        this.payCode,
        this.payLevel,
        this.payName,
        this.payPattern,
        this.paySCode,
        this.payType,
        this.pmid,
        this.rate,
        this.recordFlag,
        this.returnPayFlag,
        this.roundPrecision,
        this.roundType,
        this.status,
        this.virtualPayType,
        this.autoPayment
      });

  PaymentMethod.fromJson(Map<String, dynamic> json) {
    base = json['base'];
    cardPayType = json['cardPayType'];
    changeFlag = json['changeFlag'];
    changeRate = json['changeRate'];
    currencyCode = json['currencyCode'];
    currencyFlag = json['currencyFlag'];
    entId = json['entId'];
    invoiceFlag = json['invoiceFlag'];
    lang = json['lang'];
    leafFlag = json['leafFlag'];
    level = json['level'];
    maxAmount = json['maxAmount'];
    minAmount = json['minAmount'];
    name = json['name'];
    overflowFlag = json['overflowFlag'];
    parentCode = json['parentCode'];
    parentId = json['parentId'];
    payCode = json['payCode'];
    payLevel = json['payLevel'];
    payName = json['payName'];
    payPattern = json['payPattern'];
    paySCode = json['paySCode'];
    payType = json['payType'];
    pmid = json['pmid'];
    rate = json['rate'];
    recordFlag = json['recordFlag'];
    returnPayFlag = json['returnPayFlag'];
    roundPrecision = json['roundPrecision'];
    roundType = json['roundType'];
    status = json['status'];
    virtualPayType = json['virtualPayType'];
    autoPayment = json['autoPayment'];

  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['base'] = base;
    data['cardPayType'] = cardPayType;
    data['changeFlag'] = changeFlag;
    data['changeRate'] = changeRate;
    data['currencyCode'] =currencyCode;
    data['currencyFlag'] = currencyFlag;
    data['entId'] = entId;
    data['invoiceFlag'] = invoiceFlag;
    data['lang'] = lang;
    data['leafFlag'] = leafFlag;
    data['level'] = level;
    data['maxAmount'] = maxAmount;
    data['minAmount'] = minAmount;
    data['name'] = name;
    data['overflowFlag'] = overflowFlag;
    data['parentCode'] = parentCode;
    data['parentId'] = parentId;
    data['payCode'] = payCode;
    data['payLevel'] = payLevel;
    data['payName'] = payName;
    data['payPattern'] = payPattern;
    data['paySCode'] = paySCode;
    data['payType'] = payType;
    data['pmid'] = pmid;
    data['rate'] = rate;
    data['recordFlag'] = recordFlag;
    data['returnPayFlag'] = returnPayFlag;
    data['roundPrecision'] = roundPrecision;
    data['roundType'] = roundType;
    data['status'] = status;
    data['virtualPayType'] = virtualPayType;
    data['autoPayment'] = autoPayment;

    return data;
  }
}
class Paymode {
  String? cardPayType;
  num? cashBoxFlag;
  String? code;
  bool? creditsFlag;
  num? employeeShopFlag;
  String? invoiceFlag;
  String? isyy;
  String? iszl;
  String? leafflag;
  num? level;
  num? levelclass;
  bool? mCreditsFlag;
  bool? mInvoiceFlag;
  String? mName;
  num? maxval;
  String? merchantsCode;
  String? merchantsId;
  num? minval;
  String? name;
  num? noBillReturnFlag;
  num? overReturnFlag;//1 表示可以超额退货  0表示不允许超额退货
  num? parentid;
  String? paypattern;
  String? paysimplecode;
  String? paytype;
  bool? pfCreditsFlag;
  bool? pfInvoiceFlag;
  String? pfName;
  num? phKey;
  String? platformCode;
  String? platformId;
  num? posAbleFlag;
  num? pyhl;
  String? recordFlag;
  String? returnPayFlag;
  String? sjcode;
  String? sswrfs;
  num? sswrjd;
  num? statu;
  num? virtualPayType;
  num? zlhl;
//  PaymentMethod paymentMethod;
  List<Paymode>? children;
  String? parentCode;
  String? folderName;
  String? creator;
  num? updateDate;
  num? folderFlag;
  num? entId;
//  num level;
  String? modifier;
  num? templateId;
  num? parentId;
  num? itemId;
//  num parentCode;
  num? dispseqno;
  String? lang;
  num? createDate;

  //children内的实体
  String? payCode;
  String? payName;
  num? minAmount;
  String? payPattern;
//  num virtualPayType;
  String? payType;
  String? paySCode;
//  String parentCode;
  num? rate;
  String? erpCode;
  String? changeFlag;
  num? overflowFlag;
  String? roundType;
  num? changeRate;
//  String lang;
  num? maxAmount;
//  String createDate;
//  String creator;
//  num entId;
//  num level;
  num? payLevel;
  num? pmid;
//  num parentId;
  String? leafFlag;
  num? roundPrecision;
  String? currencyFlag;
//  String returnPayFlag;
  String? currencyCode;
  num? status;
  num? groupBuyFlag;

  Paymode(
      {
        this.cardPayType,
        this.cashBoxFlag,
        this.code,
        this.creditsFlag,
        this.employeeShopFlag,
        this.invoiceFlag,
        this.isyy,
        this.iszl,
        this.leafflag,
        this.level,
        this.levelclass,
        this.mCreditsFlag,
        this.mInvoiceFlag,
        this.mName,
        this.maxval,
        this.merchantsCode,
        this.merchantsId,
        this.minval,
        this.name,
        this.noBillReturnFlag,
        this.overReturnFlag,
        this.parentid,
        this.paypattern,
        this.paysimplecode,
        this.paytype,
        this.pfCreditsFlag,
        this.pfInvoiceFlag,
        this.pfName,
        this.phKey,
        this.platformCode,
        this.platformId,
        this.posAbleFlag,
        this.pyhl,
        this.recordFlag,
        this.returnPayFlag,
        this.sjcode,
        this.sswrfs,
        this.sswrjd,
        this.statu,
        this.virtualPayType,
        this.zlhl,

        this.parentCode,
        this.folderName,
        this.creator,
        this.updateDate,
        this.folderFlag,
        this.entId,
        this.modifier,
        this.templateId,
        this.parentId,
        this.itemId,
        this.dispseqno,
        this.lang,
        this.createDate,

        //children实体
        this.children,
        this.payCode,
        this.payName,
        this.minAmount,
        this.payPattern,
        this.payType,
        this.paySCode,
        this.rate,
        this.erpCode,
        this.changeFlag,
        this.overflowFlag,
        this.roundType,
        this.changeRate,
        this.maxAmount,
        this.payLevel,
        this.pmid,
        this.leafFlag,
        this.roundPrecision,
        this.currencyFlag,
        this.currencyCode,
        this.status,
        this.groupBuyFlag

      });

  Paymode.fromJson(Map<String, dynamic> json) {
    cardPayType = json['cardPayType'];
    cashBoxFlag = json['cashBoxFlag'];
    code = json['code'];
    creditsFlag = json['creditsFlag'];
    employeeShopFlag = json['employeeShopFlag'];
    invoiceFlag = json['invoiceFlag'];
    isyy = json['isyy'];
    iszl = json['iszl'];
    leafflag = json['leafflag'];
    level = json['level'];
    levelclass = json['levelclass'];
    mCreditsFlag = json['mCreditsFlag'];
    mInvoiceFlag = json['mInvoiceFlag'];
    mName = json['mName'];
    maxval = json['maxval'];
    merchantsCode = json['merchantsCode'];
    merchantsId = json['merchantsId'];
    minval = json['minval'];
    name = json['name'];
    noBillReturnFlag = json['noBillReturnFlag'];
    overReturnFlag = json['overReturnFlag'];
    parentid = json['parentid'];
    paypattern = json['paypattern'];
    paysimplecode = json['paysimplecode'];
    paytype = json['paytype'];
    pfCreditsFlag = json['pfCreditsFlag'];
    pfInvoiceFlag = json['pfInvoiceFlag'];
    pfName = json['pfName'];
    phKey = json['ph_key'];
    platformCode = json['platformCode'];
    platformId = json['platformId'];
    posAbleFlag = json['posAbleFlag'];
    pyhl = json['pyhl'];
    recordFlag = json['recordFlag'];
    returnPayFlag = json['returnPayFlag'];
    sjcode = json['sjcode'];
    sswrfs = json['sswrfs'];
    sswrjd = json['sswrjd'];
    statu = json['statu'];
    virtualPayType = json['virtualPayType'];
    zlhl = json['zlhl'];

    parentCode = json['parentCode'];
    folderName = json['folderName'];
    creator=json['creator'];
    updateDate=json['updateDate'];
    folderFlag=json['folderFlag'];
    entId=json['entId'];
    modifier=json['modifier'];
    templateId=json['templateId'];
    parentId=json['parentId'];
    itemId=json['itemId'];
    dispseqno=json['dispseqno'];
    lang=json['lang'];
    createDate=json['createDate'];

    if (json['children'] != null) {
      children =  <Paymode>[];
      json['children'].forEach((v) {
        children!.add( Paymode.fromJson(v));
      });
    }
    payCode = json['payCode'];
    payName = json['payName'];
    minAmount = json['minAmount'];
    payPattern = json['payPattern'];
    payType = json['payType'];
    paySCode = json['paySCode'];
    rate = json['rate'];
    erpCode = json['erpCode'];
    changeFlag = json['changeFlag'];
    overflowFlag = json['overflowFlag'];
    roundType = json['roundType'];
    changeRate = json['changeRate'];
    maxAmount = json['maxAmount'];
    payLevel = json['payLevel'];
    pmid = json['pmid'];
    leafFlag = json['leafFlag'];
    roundPrecision = json['roundPrecision'];
    currencyFlag = json['currencyFlag'];
    currencyCode = json['currencyCode'];
    status = json['status'];
    groupBuyFlag = json['groupBuyFlag'];

  }


  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  Map<String, dynamic>();
    data['cardPayType'] = cardPayType;
    data['cashBoxFlag'] = cashBoxFlag;
    data['code'] = code;
    data['creditsFlag'] = creditsFlag;
    data['employeeShopFlag'] = employeeShopFlag;
    data['invoiceFlag'] = invoiceFlag;
    data['isyy'] = isyy;
    data['iszl'] = iszl;
    data['leafflag'] = leafflag;
    data['level'] = level;
    data['levelclass'] = levelclass;
    data['mCreditsFlag'] = mCreditsFlag;
    data['mInvoiceFlag'] = mInvoiceFlag;
    data['mName'] = mName;
    data['maxval'] = maxval;
    data['merchantsCode'] = merchantsCode;
    data['merchantsId'] = merchantsId;
    data['minval'] = minval;
    data['name'] = name;
    data['noBillReturnFlag'] = noBillReturnFlag;
    data['overReturnFlag'] = overReturnFlag;
    data['parentid'] = parentid;
    data['paypattern'] = paypattern;
    data['paysimplecode'] = paysimplecode;
    data['paytype'] = paytype;
    data['pfCreditsFlag'] = pfCreditsFlag;
    data['pfInvoiceFlag'] = pfInvoiceFlag;
    data['pfName'] = pfName;
    data['ph_key'] = phKey;
    data['platformCode'] = platformCode;
    data['platformId'] = platformId;
    data['posAbleFlag'] = posAbleFlag;
    data['pyhl'] = pyhl;
    data['recordFlag'] = recordFlag;
    data['returnPayFlag'] = returnPayFlag;
    data['sjcode'] = sjcode;
    data['sswrfs'] = sswrfs;
    data['sswrjd'] = sswrjd;
    data['statu'] = statu;
    data['virtualPayType'] = virtualPayType;
    data['zlhl'] = zlhl;

    data['parentCode'] = parentCode;
    data['folderName'] = folderName;
    data['creator'] = creator;
    data['updateDate'] = updateDate;
    data['folderFlag'] = folderFlag;
    data['entId'] = entId;
    data['modifier'] = modifier;
    data['templateId'] = templateId;
    data['parentId'] = parentId;
    data['itemId'] = itemId;
    data['dispseqno'] = dispseqno;
    data['lang'] = lang;
    data['createDate'] = createDate;

    if (children != null) {
      data['children'] = children!.map((v) => v.toJson()).toList();
    }

    data['payCode'] = payCode;
    data['payName'] = payName;
    data['minAmount'] = minAmount;
    data['payPattern'] = payPattern;
    data['payType'] = payType;
    data['paySCode'] = paySCode;
    data['rate'] = rate;
    data['erpCode'] = erpCode;
    data['changeFlag'] =changeFlag;
    data['overflowFlag'] = overflowFlag;
    data['roundType'] = roundType;
    data['changeRate'] = changeRate;
    data['maxAmount'] = maxAmount;
    data['payLevel'] = payLevel;
    data['pmid'] = pmid;
    data['leafFlag'] = leafFlag;
    data['roundPrecision'] = roundPrecision;
    data['currencyFlag'] = currencyFlag;
    data['currencyCode'] = currencyCode;
    data['status'] = status;
    data['groupBuyFlag'] = groupBuyFlag;
    return data;
  }
}

class Posadvertisetemplate {
  DefaultAd? defaultAd;

  Posadvertisetemplate({this.defaultAd});

  Posadvertisetemplate.fromJson(Map<String, dynamic> json) {
    defaultAd = json['defaultAd'] != null
        ?  DefaultAd.fromJson(json['defaultAd'])
        : null;
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    if (defaultAd != null) {
      data['defaultAd'] = defaultAd!.toJson();
    }
    return data;
  }
}

class DefaultAd {
  num? adStatus;
  num? adType;
  List<Adstrategydetail>? adstrategydetail;
  num? creatDate;
  String? creator;
  String? creatorGh;
  String? creatorName;
  num? entId;
  String? erpCode;
  String? mkt;
  String? modifier;
  String? modifierGh;
  String? modifierName;
  String? strategyName;
  String? syjgName;
  String? syjgrpid;
  num? templateId;
  num? type;
  num? updateDate;
  String? version;
  num? versionDate;
  String? versionPath;

  DefaultAd(
      {this.adStatus,
        this.adType,
        this.adstrategydetail,
        this.creatDate,
        this.creator,
        this.creatorGh,
        this.creatorName,
        this.entId,
        this.erpCode,
        this.mkt,
        this.modifier,
        this.modifierGh,
        this.modifierName,
        this.strategyName,
        this.syjgName,
        this.syjgrpid,
        this.templateId,
        this.type,
        this.updateDate,
        this.version,
        this.versionDate,
        this.versionPath});

  DefaultAd.fromJson(Map<String, dynamic> json) {
    adStatus = json['adStatus'];
    adType = json['adType'];
    if (json['adstrategydetail'] != null) {
      adstrategydetail = <Adstrategydetail>[];
      json['adstrategydetail'].forEach((v) {
        adstrategydetail!.add( Adstrategydetail.fromJson(v));
      });
    }
    creatDate = json['creatDate'];
    creator = json['creator'];
    creatorGh = json['creatorGh'];
    creatorName = json['creatorName'];
    entId = json['entId'];
    erpCode = json['erpCode'];
    mkt = json['mkt'];
    modifier = json['modifier'];
    modifierGh = json['modifierGh'];
    modifierName = json['modifierName'];
    strategyName = json['strategyName'];
    syjgName = json['syjgName'];
    syjgrpid = json['syjgrpid'];
    templateId = json['templateId'];
    type = json['type'];
    updateDate = json['updateDate'];
    version = json['version'];
    versionDate = json['versionDate'];
    versionPath = json['versionPath'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['adStatus'] = adStatus;
    data['adType'] = adType;
    if (adstrategydetail != null) {
      data['adstrategydetail'] =
          adstrategydetail!.map((v) => v.toJson()).toList();
    }
    data['creatDate'] = creatDate;
    data['creator'] = creator;
    data['creatorGh'] = creatorGh;
    data['creatorName'] = creatorName;
    data['entId'] = entId;
    data['erpCode'] = erpCode;
    data['mkt'] = mkt;
    data['modifier'] = modifier;
    data['modifierGh'] = modifierGh;
    data['modifierName'] = modifierName;
    data['strategyName'] = strategyName;
    data['syjgName'] = syjgName;
    data['syjgrpid'] = syjgrpid;
    data['templateId'] = templateId;
    data['type'] = type;
    data['updateDate'] = updateDate;
    data['version'] = version;
    data['versionDate'] = versionDate;
    data['versionPath'] = versionPath;
    return data;
  }
}

class Adstrategydetail {
  String? adName;
  num? cycleTime;
  num? detailId;
  String? ftpPath;
  String? memo;
  num? orderNum;
  num? templateId;
  num? updateDate;

  Adstrategydetail(
      {this.adName,
        this.cycleTime,
        this.detailId,
        this.ftpPath,
        this.memo,
        this.orderNum,
        this.templateId,
        this.updateDate});

  Adstrategydetail.fromJson(Map<String, dynamic> json) {
    adName = json['adName'];
    cycleTime = json['cycleTime'];
    detailId = json['detailId'];
    ftpPath = json['ftpPath'];
    memo = json['memo'];
    orderNum = json['orderNum'];
    templateId = json['templateId'];
    updateDate = json['updateDate'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  Map<String, dynamic>();
    data['adName'] = adName;
    data['cycleTime'] = cycleTime;
    data['detailId'] = detailId;
    data['ftpPath'] = ftpPath;
    data['memo'] = memo;
    data['orderNum'] = orderNum;
    data['templateId'] = templateId;
    data['updateDate'] = updateDate;
    return data;
  }
}

class Poscallinfo {
  String? code;
  int? entId;
  String? erpCode;
  String? mkt;
  String? phKey;
  int? phTimestamp;
  String? statu;
  String? text;
  String? tmdd;

  Poscallinfo(
      {this.code,
        this.entId,
        this.erpCode,
        this.mkt,
        this.phKey,
        this.phTimestamp,
        this.statu,
        this.text,
        this.tmdd});

  Poscallinfo.fromJson(Map<String, dynamic> json) {
    code = json['code'];
    entId = json['entId'];
    erpCode = json['erpCode'];
    mkt = json['mkt'];
    phKey = json['ph_key'];
    phTimestamp = json['ph_timestamp'];
    statu = json['statu'];
    text = json['text'];
    tmdd = json['tmdd'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['code'] = code;
    data['entId'] = entId;
    data['erpCode'] = erpCode;
    data['mkt'] = mkt;
    data['ph_key'] = phKey;
    data['ph_timestamp'] = phTimestamp;
    data['statu'] = statu;
    data['text'] = text;
    data['tmdd'] = tmdd;
    return data;
  }
}

class Poskeyboard {
  num? createDate;
  num? detailId;
  String? funccode;
  String? funcname;
  String? keyboardType;
  String? keycode;
  String? keyname;
  String? keytype;
  String? lang;
  String? sn;
  num? templateId;
  String? templateName;
  num? updateDate;

  Poskeyboard(
      {this.createDate,
        this.detailId,
        this.funccode,
        this.funcname,
        this.keyboardType,
        this.keycode,
        this.keyname,
        this.keytype,
        this.lang,
        this.sn,
        this.templateId,
        this.templateName,
        this.updateDate});

  Poskeyboard.fromJson(Map<String, dynamic> json) {
    createDate = json['createDate'];
    detailId = json['detailId'];
    funccode = json['funccode'];
    funcname = json['funcname'];
    keyboardType = json['keyboardType'];
    keycode = json['keycode'];
    keyname = json['keyname'];
    keytype = json['keytype'];
    lang = json['lang'];
    sn = json['sn'];
    templateId = json['templateId'];
    templateName = json['templateName'];
    updateDate = json['updateDate'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  Map<String, dynamic>();
    data['createDate'] = createDate;
    data['detailId'] = detailId;
    data['funccode'] = funccode;
    data['funcname'] = funcname;
    data['keyboardType'] = keyboardType;
    data['keycode'] = keycode;
    data['keyname'] = keyname;
    data['keytype'] = keytype;
    data['lang'] = lang;
    data['sn'] = sn;
    data['templateId'] = templateId;
    data['templateName'] = templateName;
    data['updateDate'] = updateDate;
    return data;
  }
}

class Postime {
  String? btime;
  String? code;
  num? entId;
  String? erpCode;
  String? etime;
  String? mkt;
  String? name;
  String? phKey;
  num? phTimestamp;
  String? statu;
  num? tmdd;
  num? updateDate;

  Postime(
      {this.btime,
        this.code,
        this.entId,
        this.erpCode,
        this.etime,
        this.mkt,
        this.name,
        this.phKey,
        this.phTimestamp,
        this.statu,
        this.tmdd,
        this.updateDate});

  Postime.fromJson(Map<String, dynamic> json) {
    btime = json['btime'];
    code = json['code'];
    entId = json['entId'];
    erpCode = json['erpCode'];
    etime = json['etime'];
    mkt = json['mkt'];
    name = json['name'];
    phKey = json['ph_key'];
    phTimestamp = json['ph_timestamp'];
    statu = json['statu'];
    tmdd = json['tmdd'];
    updateDate = json['updateDate'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  Map<String, dynamic>();
    data['btime'] = btime;
    data['code'] = code;
    data['entId'] = entId;
    data['erpCode'] = erpCode;
    data['etime'] = etime;
    data['mkt'] = mkt;
    data['name'] = name;
    data['ph_key'] = phKey;
    data['ph_timestamp'] = phTimestamp;
    data['statu'] = statu;
    data['tmdd'] = tmdd;
    data['updateDate'] = updateDate;
    return data;
  }
}

class Printtemplate {
  String? ftpaddress;
  String? ftppath;
  String? passwd;
  int? port;
  String? userid;

  Printtemplate(
      {this.ftpaddress, this.ftppath, this.passwd, this.port, this.userid});

  Printtemplate.fromJson(Map<String, dynamic> json) {
    ftpaddress = json['ftpaddress'];
    ftppath = json['ftppath'];
    passwd = json['passwd'];
    port = json['port'];
    userid = json['userid'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['ftpaddress'] = ftpaddress;
    data['ftppath'] = ftppath;
    data['passwd'] = passwd;
    data['port'] = port;
    data['userid'] = userid;
    return data;
  }
}

class Selfgoodstemplate {

  String? erpCode;
  String? mkt;
  List<SelfGoods>? selfGoods;

  Selfgoodstemplate({this.erpCode, this.mkt, this.selfGoods});

  Selfgoodstemplate.fromJson(Map<String, dynamic> json) {
    erpCode = json['erpCode'];
    mkt = json['mkt'];
    if (json['selfGoods'] != null&&json['selfGoods'].length>0) {
      selfGoods =  <SelfGoods>[];
      json['selfGoods'].forEach((v) {
        selfGoods!.add( SelfGoods.fromJson(v));
      });
    }
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  Map<String, dynamic>();
    data['erpCode'] = erpCode;
    data['mkt'] = this.mkt;
    if (selfGoods != null&&selfGoods!.isNotEmpty) {
      data['selfGoods'] = this.selfGoods!.map((v) => v.toJson()).toList();
    }
    return data;
  }
}

class SelfGoods {


  List<GoodsDetail>? goodsDetail;
  String? templateId;
  String? templateName;
  String? funcode;

  SelfGoods({this.goodsDetail, this.templateId, this.templateName,this.funcode});

  SelfGoods.fromJson(Map<String, dynamic> json) {
    if (json['goodsDetail'] != null&&json['goodsDetail'].length>0) {
      goodsDetail =  <GoodsDetail>[];
      json['goodsDetail'].forEach((v) {
        goodsDetail!.add( GoodsDetail.fromJson(v));
      });
    }
    templateId = json['templateId'];
    templateName = json['templateName'];
    funcode = json['funcode'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    if (goodsDetail != null&&goodsDetail!.isNotEmpty) {
      data['goodsDetail'] = goodsDetail!.map((v) => v.toJson()).toList();
    }
    data['templateId'] = templateId;
    data['templateName'] = templateName;
    data['funcode'] = funcode;
    return data;
  }
}

class GoodsDetail {
  String? dictDataenname;
  String? goodCode;
  String? goodDisplayType;
  List<Goods>? goods;

  GoodsDetail(
      {this.dictDataenname, this.goodCode, this.goodDisplayType, this.goods});

  GoodsDetail.fromJson(Map<String, dynamic> json) {
    dictDataenname = json['dictDataenname'];
    goodCode = json['goodCode'];
    goodDisplayType = json['goodDisplayType'];
    if (json['goods'] != null) {
      goods =  <Goods>[];
      json['goods'].forEach((v) {
        goods!.add( Goods.fromJson(v));
      });
    }
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['dictDataenname'] = dictDataenname;
    data['goodCode'] = goodCode;
    data['goodDisplayType'] = goodDisplayType;
    if (goods != null) {
      data['goods'] = goods!.map((v) => v.toJson()).toList();
    }
    return data;
  }
}

class Goods {
  String? barNo;
  num? custsaleprice;
  String? enFname;
  String? erpCode;
  int? escaleFlag;
  List<Null>? goodProperty;
  String? goodsCode;
  String? goodsName;
  String? isExist;
  int? mainBarcodeFlag;
  num? salePrice;
  String? goodsURL;

  Goods(
      {this.barNo,
        this.custsaleprice,
        this.enFname,
        this.erpCode,
        this.escaleFlag,
        this.goodProperty,
        this.goodsCode,
        this.goodsName,
        this.isExist,
        this.mainBarcodeFlag,
        this.salePrice,
        this.goodsURL});

  Goods.fromJson(Map<String, dynamic> json) {
    barNo = json['barNo'];
    custsaleprice = json['custsaleprice'];
    enFname = json['enFname'];
    erpCode = json['erpCode'];
    escaleFlag = json['escaleFlag'];
    goodsCode = json['goodsCode'];
    goodsName = json['goodsName'];
    isExist = json['isExist'];
    mainBarcodeFlag = json['mainBarcodeFlag'];
    salePrice = json['salePrice'];
    goodsURL = json['goodsURL'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['barNo'] = barNo;
    data['custsaleprice'] = custsaleprice;
    data['enFname'] = enFname;
    data['erpCode'] = erpCode;
    data['escaleFlag'] = escaleFlag;
    data['goodsCode'] = goodsCode;
    data['goodsName'] = goodsName;
    data['isExist'] = isExist;
    data['mainBarcodeFlag'] = mainBarcodeFlag;
    data['salePrice'] = salePrice;
    data['goodsURL'] = goodsURL;
    return data;
  }
}

class ServerTime {
  String? serviceTime;

  ServerTime({this.serviceTime});

  ServerTime.fromJson(Map<String, dynamic> json) {
    serviceTime = json['serviceTime'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['serviceTime'] = serviceTime;
    return data;
  }
}

class Smtouchpostemplate {
  String? mkt;
  List<Presskeys>? presskeys;
  num? templateId;
  String? templateName;

  Smtouchpostemplate(
      {this.mkt, this.presskeys, this.templateId, this.templateName});

  Smtouchpostemplate.fromJson(Map<String, dynamic> json) {
    mkt = json['mkt'];
    if (json['presskeys'] != null) {
      presskeys =  <Presskeys>[];
      json['presskeys'].forEach((v) {
        presskeys!.add( Presskeys.fromJson(v));
      });
    }
    templateId = json['templateId'];
    templateName = json['templateName'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['mkt'] = mkt;
    if (presskeys != null) {
      data['presskeys'] = presskeys!.map((v) => v.toJson()).toList();
    }
    data['templateId'] = templateId;
    data['templateName'] = templateName;
    return data;
  }
}

class Presskeys {
  List<Home>? home;
  List<Sale>? sale;

  Presskeys({this.home, this.sale});

  Presskeys.fromJson(Map<String, dynamic> json) {
    if (json['home'] != null) {
      home =  <Home>[];
      json['home'].forEach((v) {
        home!.add( Home.fromJson(v));
      });
    }
    if (json['sale'] != null) {
      sale =  <Sale>[];
      json['sale'].forEach((v) {
        sale!.add( Sale.fromJson(v));
      });
    }
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    if (home != null) {
      data['home'] = home!.map((v) => v.toJson()).toList();
    }
    if (sale != null) {
      data['sale'] = sale!.map((v) => v.toJson()).toList();
    }
    return data;
  }
}

class Home {
  String? code;
  String? name;

  Home({this.code, this.name});

  Home.fromJson(Map<String, dynamic> json) {
    code = json['code'];
    name = json['name'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['code'] = code;
    data['name'] = name;
    return data;
  }
}

class Sale {
  String? code;
  String? name;
  List<HomeDetail>? homeDetail;

  Sale({this.code, this.name,this.homeDetail});

  Sale.fromJson(Map<String, dynamic> json) {
    code = json['code'];
    name = json['name'];
    if (json['homeDetail'] != null) {
      homeDetail =  <HomeDetail>[];
      json['homeDetail'].forEach((v) {
        homeDetail!.add( HomeDetail.fromJson(v));
      });
    }
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['code'] = code;
    data['name'] = name;
    if (homeDetail != null) {
      data['homeDetail'] = homeDetail!.map((v) => v.toJson()).toList();
    }
    return data;
  }
}

class Syjmain {
  String? applicence;
  String? appversion;
  num? businessid;
  String? categoryCode;
  String? cdkey;
  String? mzkTerminalNo;
  String? channelCode;
  num? entId;
  String? erpCode;
  String? ftpId;
  String? hardwareconfig;
  num? insertprecashcount;
  String? isdisp;
  String? ishavekeyboard;
  String? iskey;
  String? isprint;
  String? issryyy;
  String? istouchpos;
  String? ists;
  String? keyboardcode;
  String? keyboardname;
  String? mkt;
  num? nocodeid;
  String? outlineservice;
  String? phKey;
  num? phTimestamp;
  String? posip;
  String? pospath;
  String? printername;
  String? printfs;
  String? privpf;
  String? privqt1;
  String? privqt3;
  String? privth;
  num? smcpid;
  num? smjpid;
  String? sswrfs;
  num? stallid;
  String? statu;
  num? syjcleartime;
  num? syjcurcashje;
  num? syjcurinvbs;
  num? syjcurinvje;
  num? syjcurnum;
  num? syjcurpreje;
  String? syjcursmy;
  String? syjcurstatus;
  String? syjcursyyh;
  num? syjcurtime;
  num? syjdatespace;
  num? syjdatetime;
  String? syjdesc;
  String? syjflag;
  String? syjgroup;
  String? syjh;
  String? syjip;
  String? syjmode;
  num? syjopentime;
  num? syjpaycount;
  String? syjpaytemplet;
  num? syjpid;
  num? tmdd;
  num? touchtemplateid;
  num? updateDate;
  String? updateip;
  String? POSTTerminalnno;
  String? isdz;
  String? syjgz;
  String? sourcetype;
  String? printMode;

  Syjmain(
      {this.applicence,
        this.appversion,
        this.businessid,
        this.categoryCode,
        this.cdkey,
        this.mzkTerminalNo,
        this.channelCode,
        this.entId,
        this.erpCode,
        this.ftpId,
        this.hardwareconfig,
        this.insertprecashcount,
        this.isdisp,
        this.ishavekeyboard,
        this.iskey,
        this.isprint,
        this.issryyy,
        this.istouchpos,
        this.ists,
        this.keyboardcode,
        this.keyboardname,
        this.mkt,
        this.nocodeid,
        this.outlineservice,
        this.phKey,
        this.phTimestamp,
        this.posip,
        this.pospath,
        this.printername,
        this.printfs,
        this.privpf,
        this.privqt1,
        this.privqt3,
        this.privth,
        this.smcpid,
        this.smjpid,
        this.sswrfs,
        this.stallid,
        this.statu,
        this.syjcleartime,
        this.syjcurcashje,
        this.syjcurinvbs,
        this.syjcurinvje,
        this.syjcurnum,
        this.syjcurpreje,
        this.syjcursmy,
        this.syjcurstatus,
        this.syjcursyyh,
        this.syjcurtime,
        this.syjdatespace,
        this.syjdatetime,
        this.syjdesc,
        this.syjflag,
        this.syjgroup,
        this.syjh,
        this.syjip,
        this.syjmode,
        this.syjopentime,
        this.syjpaycount,
        this.syjpaytemplet,
        this.syjpid,
        this.tmdd,
        this.touchtemplateid,
        this.updateDate,
        this.updateip,
        this.POSTTerminalnno,
        this.isdz,
        this.syjgz,
        this.sourcetype,
        this.printMode,
      });

  Syjmain.fromJson(Map<String, dynamic> json) {
    applicence = json['applicence'];
    appversion = json['appversion'];
    businessid = json['businessid'];
    categoryCode = json['categoryCode'];
    cdkey = json['cdkey'];
    mzkTerminalNo = json['mzkTerminalNo'];
    channelCode = json['channelCode'];
    entId = json['entId'];
    erpCode = json['erpCode'];
    ftpId = json['ftp_id'].toString();
    hardwareconfig = json['hardwareconfig'];
    insertprecashcount = json['insertprecashcount'];
    isdisp = json['isdisp'];
    ishavekeyboard = json['ishavekeyboard'];
    iskey = json['iskey'];
    isprint = json['isprint'];
    issryyy = json['issryyy'];
    istouchpos = json['istouchpos'];
    ists = json['ists'];
    keyboardcode = json['keyboardcode'];
    keyboardname = json['keyboardname'];
    mkt = json['mkt'];
    nocodeid = json['nocodeid'];
    outlineservice = json['outlineservice'];
    phKey = json['ph_key'].toString();
    phTimestamp = json['ph_timestamp'];
    posip = json['posip'];
    pospath = json['pospath'];
    printername = json['printername'];
    printfs = json['printfs'];
    privpf = json['privpf'];
    privqt1 = json['privqt1'];
    privqt3 = json['privqt3'];
    privth = json['privth'];
    smcpid = json['smcpid'];
    smjpid = json['smjpid'];
    sswrfs = json['sswrfs'];
    stallid = json['stallid'];
    statu = json['statu'];
    syjcleartime = json['syjcleartime'];
    syjcurcashje = json['syjcurcashje'];
    syjcurinvbs = json['syjcurinvbs'];
    syjcurinvje = json['syjcurinvje'];
    syjcurnum = json['syjcurnum'];
    syjcurpreje = json['syjcurpreje'];
    syjcursmy = json['syjcursmy'];
    syjcurstatus = json['syjcurstatus'];
    syjcursyyh = json['syjcursyyh'];
    syjcurtime = json['syjcurtime'];
    syjdatespace = json['syjdatespace'];
    syjdatetime = json['syjdatetime'];
    syjdesc = json['syjdesc'];
    syjflag = json['syjflag'];
    syjgroup = json['syjgroup'];
    syjh = json['syjh'];
    syjip = json['syjip'];
    syjmode = json['syjmode'];
    syjopentime = json['syjopentime'];
    syjpaycount = json['syjpaycount'];
    syjpaytemplet = json['syjpaytemplet'];
    syjpid = json['syjpid'];
    tmdd = json['tmdd'];
    touchtemplateid = json['touchtemplateid'];
    updateDate = json['updateDate'];
    updateip = json['updateip'];
    POSTTerminalnno = json['POSTTerminalnno'];
    isdz = json['isdz'];
    syjgz = json['syjgz'];
    sourcetype = json['sourcetype'];
    printMode = json['printMode'];

  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  Map<String, dynamic>();
    data['applicence'] = applicence;
    data['appversion'] = appversion;
    data['businessid'] = businessid;
    data['categoryCode'] = categoryCode;
    data['cdkey'] = cdkey;
    data['mzkTerminalNo'] = mzkTerminalNo;
    data['channelCode'] = channelCode;
    data['entId'] = entId;
    data['erpCode'] = erpCode;
    data['ftp_id'] = ftpId;
    data['hardwareconfig'] = hardwareconfig;
    data['insertprecashcount'] = insertprecashcount;
    data['isdisp'] = isdisp;
    data['ishavekeyboard'] = ishavekeyboard;
    data['isprint'] = isprint;
    data['issryyy'] = issryyy;
    data['istouchpos'] = istouchpos;
    data['ists'] = ists;
    data['keyboardcode'] = keyboardcode;
    data['keyboardname'] = keyboardname;
    data['mkt'] = mkt;
    data['nocodeid'] = nocodeid;
    data['outlineservice'] = outlineservice;
    data['ph_key'] = phKey;
    data['ph_timestamp'] = phTimestamp;
    data['posip'] = posip;
    data['pospath'] = pospath;
    data['printername'] = printername;
    data['printfs'] = printfs;
    data['privpf'] = privpf;
    data['privqt1'] = privqt1;
    data['privqt3'] = privqt3;
    data['privth'] = privth;
    data['smcpid'] = smcpid;
    data['smjpid'] = smjpid;
    data['sswrfs'] = sswrfs;
    data['stallid'] = stallid;
    data['statu'] =  statu;
    data['syjcleartime'] = syjcleartime;
    data['syjcurcashje'] = syjcurcashje;
    data['syjcurinvbs'] = syjcurinvbs;
    data['syjcurinvje'] = syjcurinvje;
    data['syjcurnum'] = syjcurnum;
    data['syjcurpreje'] = syjcurpreje;
    data['syjcursmy'] = syjcursmy;
    data['syjcurstatus'] = syjcurstatus;
    data['syjcursyyh'] = syjcursyyh;
    data['syjcurtime'] = syjcurtime;
    data['syjdatespace'] = syjdatespace;
    data['syjdatetime'] = syjdatetime;
    data['syjdesc'] = syjdesc;
    data['syjflag'] = syjflag;
    data['syjgroup'] = syjgroup;
    data['syjh'] = syjh;
    data['syjip'] = syjip;
    data['syjmode'] = syjmode;
    data['syjopentime'] = syjopentime;
    data['syjpaycount'] = syjpaycount;
    data['syjpaytemplet'] = syjpaytemplet;
    data['syjpid'] = syjpid;
    data['tmdd'] = tmdd;
    data['touchtemplateid'] = touchtemplateid;
    data['updateDate'] = updateDate;
    data['updateip'] = updateip;
    data['POSTTerminalnno'] = POSTTerminalnno;
    data['isdz'] = isdz;
    data['syjgz'] = syjgz;
    data['sourcetype'] = sourcetype;
    data['printMode'] = printMode;
    return data;
  }
}

class Syjprecashtemplate {
  num? amount;
  String? amountDesc;
  int? count;
  num? createDate;
  num? detailId;
  String? lang;
  int? sn;
  num? templateId;
  String? templateName;
  String? templateType;
  num? updateDate;

  Syjprecashtemplate(
      {this.amount,
        this.amountDesc,
        this.count,
        this.createDate,
        this.detailId,
        this.lang,
        this.sn,
        this.templateId,
        this.templateName,
        this.templateType,
        this.updateDate});

  Syjprecashtemplate.fromJson(Map<String, dynamic> json) {
    amount = json['amount'];
    amountDesc = json['amountDesc'];
    count = json['count'];
    createDate = json['createDate'];
    detailId = json['detailId'];
    lang = json['lang'];
    sn = json['sn'];
    templateId = json['templateId'];
    templateName = json['templateName'];
    templateType = json['templateType'];
    updateDate = json['updateDate'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['amount'] = amount;
    data['amountDesc'] = amountDesc;
    data['count'] = count;
    data['createDate'] = createDate;
    data['detailId'] = detailId;
    data['lang'] = lang;
    data['sn'] = sn;
    data['templateId'] = templateId;
    data['templateName'] = templateName;
    data['templateType'] = templateType;
    data['updateDate'] = updateDate;
    return data;
  }
}

class Syspara {
  String? code;
  num? entId;
  String? erpCode;
  String? isshow;
  String? memo;
  String? mkt;
  String? name;
  String? paravalue;
  String? phKey;
  num? phTimestamp;
  String? statu;
  String? status;
  num? tmdd;
  num? updateDate;

  Syspara(
      {this.code,
        this.entId,
        this.erpCode,
        this.isshow,
        this.memo,
        this.mkt,
        this.name,
        this.paravalue,
        this.phKey,
        this.phTimestamp,
        this.statu,
        this.status,
        this.tmdd,
        this.updateDate});

  Syspara.fromJson(Map<String, dynamic> json) {
    code = json['code'];
    entId = json['entId'];
    erpCode = json['erpCode'];
    isshow = json['isshow'];
    memo = json['memo'];
    mkt = json['mkt'];
    name = json['name'];
    paravalue = json['paravalue'];
    phKey = json['ph_key'];
    phTimestamp = json['ph_timestamp'];
    statu = json['statu'];
    status = json['status'];
    tmdd = json['tmdd'];
    updateDate = json['updateDate'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['code'] = code;
    data['entId'] = entId;
    data['erpCode'] = erpCode;
    data['isshow'] = isshow;
    data['memo'] = memo;
    data['mkt'] = mkt;
    data['name'] = name;
    data['paravalue'] = paravalue;
    data['ph_key'] = phKey;
    data['ph_timestamp'] = phTimestamp;
    data['statu'] = statu;
    data['status'] = status;
    data['tmdd'] = tmdd;
    data['updateDate'] = updateDate;
    return data;
  }
}

class Threason {
  String? cnName;
  String? code;
  num? createDate;
  String? dictCode;
  num? did;
  String? enName;
  int? entId;
  String? erpCode;
  num? id;
  String? lang;
  int? orderSeq;
  num? status;
  num? systemFlag;
  String? updateDate;
  String? value;

  Threason(
      {this.cnName,
        this.code,
        this.createDate,
        this.dictCode,
        this.did,
        this.enName,
        this.entId,
        this.erpCode,
        this.id,
        this.lang,
        this.orderSeq,
        this.status,
        this.systemFlag,
        this.updateDate,
        this.value});

  Threason.fromJson(Map<String, dynamic> json) {
    cnName = json['cnName'];
    code = json['code'];
    createDate = json['createDate'];
    dictCode = json['dictCode'];
    did = json['did'];
    enName = json['enName'];
    entId = json['entId'];
    erpCode = json['erpCode'];
    id = json['id'];
    lang = json['lang'];
    orderSeq = json['orderSeq'];
    status = json['status'];
    systemFlag = json['systemFlag'];
    updateDate = json['updateDate'];
    value = json['value'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['cnName'] = null!=cnName?cnName:null;
    data['code'] = null!=code?code:null;
    data['createDate'] = null!=createDate?createDate:null;
    data['dictCode'] = null!=dictCode?dictCode:null;
    data['did'] = null!=did?did:null;
    data['enName'] = null!=enName?enName:null;
    data['entId'] = null!=entId?entId:null;
    data['erpCode'] = null!=erpCode?erpCode:null;
    data['id'] = null!=id?id:null;
    data['lang'] = null!=lang?lang:null;
    data['orderSeq'] = null!=orderSeq?orderSeq:null;
    data['status'] = null!=status?status:null;
    data['systemFlag'] = null!=systemFlag?systemFlag:null;
    data['updateDate'] = null!=updateDate?updateDate:null;
    data['value'] = null!=value?value:null;
    return data;
  }
}
class Paymentmethodposref {
  String? creator;
  int? updateDate;
  int? entId;
  String? modifier;
  int? pmprid;
  String? posAbleName;
  int? pmid;
  String? paymentModeDescribe;
  String? pmCode;
  String? posAbleCode;
  String? erpCode;
  String? lang;
  String? payCode;
  int? createDate;

  Paymentmethodposref(
      {this.creator,
        this.updateDate,
        this.entId,
        this.modifier,
        this.pmprid,
        this.posAbleName,
        this.pmid,
        this.paymentModeDescribe,
        this.pmCode,
        this.posAbleCode,
        this.erpCode,
        this.lang,
        this.payCode,
        this.createDate});

  Paymentmethodposref.fromJson(Map<String, dynamic> json) {
    creator = json['creator'];
    updateDate = json['updateDate'];
    entId = json['entId'];
    modifier = json['modifier'];
    pmprid = json['pmprid'];
    posAbleName = json['posAbleName'];
    pmid = json['pmid'];
    paymentModeDescribe = json['paymentModeDescribe'];
    pmCode = json['pmCode'];
    posAbleCode = json['posAbleCode'];
    erpCode = json['erpCode'];
    lang = json['lang'];
    payCode = json['payCode'];
    createDate = json['createDate'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['creator'] = creator;
    data['updateDate'] = updateDate;
    data['entId'] = entId;
    data['modifier'] = modifier;
    data['pmprid'] = pmprid;
    data['posAbleName'] = posAbleName;
    data['pmid'] = pmid;
    data['paymentModeDescribe'] = paymentModeDescribe;
    data['pmCode'] = pmCode;
    data['posAbleCode'] = posAbleCode;
    data['erpCode'] = erpCode;
    data['lang'] = lang;
    data['payCode'] = payCode;
    data['createDate'] = createDate;
    return data;
  }
}

class HomeDetail {
  String? homeCode;
  String? homeName;

  HomeDetail({this.homeCode, this.homeName});

  HomeDetail.fromJson(Map<String, dynamic> json) {
    homeCode = json['homeCode'];
    homeName = json['homeName'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data =  <String, dynamic>{};
    data['homeCode'] = homeCode;
    data['homeName'] = homeName;
    return data;
  }
}
